package com.rasenhund.android.grecorder.activity;

import mediba.ad.sdk.android.openx.MasAdListener;
import mediba.ad.sdk.android.openx.MasAdView;
import android.app.Activity;
import android.util.Log;
import android.view.View;
import android.widget.FrameLayout;

import com.rasenhund.android.grecorder.R;
import com.rasenhund.android.myutility.AdUtil;
import com.rasenhund.android.myutility.AdUtil.APPS;
import com.rasenhund.android.myutility.DeployUtil;

public class BaseActivity extends Activity {
    @SuppressWarnings("unused")
    private static final String TAG = BaseActivity.class.getSimpleName();
    private final BaseActivity self = this;

    // AdMaker
    protected FrameLayout mAdLayout = null;
    protected MasAdView mAdView = null;

    @Override
    protected void onResume() {
        super.onResume();

        // 広告の表示開始
        if (mAdView != null) {
            mAdView.start();
        }

    }

    @Override
    protected void onPause() {
        super.onPause();

        // 広告の表示終了
        if (mAdView != null) {
            mAdView.stop();
        }

    }

    /********************
     * Method
     ********************/
    /**
     * String.xmlから文字列を取得
     * 
     * @param id
     * @return
     */
    public String getStr(int id) {
        return getResources().getString(id);
    }

    /**
     * 広告表示部の初期設定
     */
    protected void initAdView() {

        if (DeployUtil.isDebaggable(self)) {
            // デバッグモードの場合は表示しない
            return;
        }

        // 広告表示エリアの取得
        mAdLayout = (FrameLayout) findViewById(R.id.adLayout);
        if (mAdLayout != null) {

            // adLayoutが存在した場合は初期設定
            mAdView = (MasAdView) findViewById(R.id.adview);
            mAdView.setAuid(AdUtil.getMedibaAd_Auid(APPS.GRECORDER));
            mAdView.setAdListener(new MasAdListener() {

                @Override
                public void onFailedToReceiveAd() {
                    Log.d(TAG, "onFailedToReceiveAd");
                }

                @Override
                public void onFailedToReceiveRefreshedAd() {
                    Log.d(TAG, "onFailedToReceiveRefreshedAd");
                }

                @Override
                public void onReceiveAd() {
                    Log.d(TAG, "onReceiveAd");

                    // 広告の取得に成功した場合のみ可視化する
                    mAdLayout.setVisibility(View.VISIBLE);
                    mAdView.setVisibility(View.VISIBLE);

                }

                @Override
                public void onReceiveRefreshedAd() {
                    Log.d(TAG, "onReceiveRefreshedAd");
                }

            });

        }

    }

}
